#ifndef __Logger__
#define __Logger__

#pragma  once

#include "Poco/Logger.h"
#include "Poco/PatternFormatter.h"
#include "Poco/FormattingChannel.h"
#include "Poco/ConsoleChannel.h"
#include "Poco/FileChannel.h"
#include "Poco/Message.h"
#include <iostream>


using Poco::Logger;
using Poco::PatternFormatter;
using Poco::FormattingChannel;
using Poco::FileChannel;
using Poco::Message;
using namespace std;

void InitFileLogger(string log_file_name);
void UnInitFileLogger();

#define FLogger Logger::get("FileLogger")

class FunctionLogger
{
public:
    FunctionLogger(string func);
    ~FunctionLogger();
private:
    string m_function_name;
};

#endif  // __Logger__